The present disclosure relates generally to the field of computer generated imagery or graphics. Computer generated imagery is utilized in various applications including cinematic applications, video game applications, and training applications such as flight simulator applications. Generally, increased fidelity in both scene density and screen resolution is desirable in computer generated imagery applications. In addition, more realistic atmospheric and weather effects are desired.
Certain computer generated applications, such as, interactive computer graphics applications, rely on a three dimensional (3D) digital database to represent the virtual environment. In general, the designers of that environment exploit the capabilities of the target graphics platform which processes data to produce the 3D environment. To achieve as much fidelity as possible, the designers often populate the database with as much scene content as the target platform engine is capable of processing. Therefore, the target platform engine and the system within which it resides may be frequently running at near full processing capacity.
The general trend in computer graphics evolution is to continually increase scene density and screen resolution. Each new generation of graphics hardware for the graphics engine provides ever increasing levels of performance. Some applications are striving to achieve eye-limiting resolution for the observer. Such levels of resolution are a lofty goal which require significant expense.
To reduce costs associated with high levels of performance, a number of strategies have been developed that provide high-fidelity in critical areas of interest while providing lower levels of fidelity elsewhere. Some strategies mix the differing resolution regions of the screen within a single graphics device, while others attempt to merge multiple video streams.
Furthermore, some systems allow the user to configure the system to trade off image quality for rendering performance. For example, it may be possible to render a scene with fewer anti-aliasing samples or fewer texture samples in order to support a higher screen resolution.
Many systems have managed scene complexity with various level-of-detail strategies which reduce the primitive count for objects that are either far away or outside the area of interest. However, these schemes alter the number of primitives that are rendered and not the methodology used to render. When special effects such as explosions, smoke, dust, or weather effects are added to the system, the system can become overloaded.
Thus, a need exists for an adaptive rendering scheme that renders special effects much faster, but at a lower level of fidelity. Further, there is a need for a graphics engine for employing such a scheme. Further still, there is a need for a method of and a system for rendering more complex special effects without causing system overload. Yet further, there is a need for flight simulation having improved realism by efficiently providing more realistic atmospheric and weather effects.